Implementation of Scheduling Policies in Real-Time Mach
نویسندگان
چکیده
Future advanced applications will require new types of objects such as continuous media objects and distributed objects[3, 1]. Such requirements will stress operating systems ability to support various levels of timeliness, reliability and performance. A single computational model and resource management policy may not cover conflicting users requirements. Therefore, an extensible operating system structure is important in future distributed systems. Traditional operating systems such as Unix support fixed programming models and resource management policies. In the future, the requirements of applications will become dramatically more complex in order to support advanced computing environments such as very large scaled distributed computing, highly parallel computing, reliable computing or real-time computing. Operating systems which satisfy the requirements should support multiple model and various resource management policies. For example, parallel computing may require several programming models for different parts of an application: some part may need a message passing model and another part may need to use a shared memory model. In addition, generic high level abstractions may require different implementations according to the characteristics of an application. For instance, object invocation can use either function shipping such as RPC and data shipping such as distributed shared memory(DSM). Resource management modules are especially critical for supporting real-time computing and high performance computing. Supporting multiple policies is important to ensure [email protected] 1 This research was supported in part by the U.S. Naval Ocean Systems Center under contract number N66001-87-C-0155, by the Office of Naval Research under contract number N00014-84-K-0734,by the Defense Advanced Research Projects Agency, ARPA Order No. 7330 under contract number MDA72-90-C-0035, by the Federal Systems Division of IBM Corporation under University Agreement YA-278067, and by the SONY Corporation. The views and conclusions contained in this document are those of the authors and should not be interpreted as representing official policies, either expressed or implied, of NOSC, ONR, DARPA, IBM, SONY, or the U.S. Government. timing constraints and to effectively reflect the semantic information of applications. The basic functions of resource management modules are allocation and deallocation of resources such as processors, communication links and memory spaces. There are two reasons to support multiple policies. The first reason is that sophisticated policies are usually very expensive. Simpler polices may be suitable for the applications which gain no advantage from using the sophisticated policies. The best policy will depend on the requirements of the application. The second reason is that a resource management module can use the semantic information of applications. For example, physical memory management modules for memory mapped files can use semantic information about the characteristics of files to determine the global working set. We can create a new policy by composing several policies which control the different types of files. In this paper, we describe an object-oriented framework for structuring a resource management module in operating systems. This framework provides policy/mechanism separation and the composition of simple policies for the resource management module. We also demonstrate this framework by presenting the implementation of a scheduler in Real-Time Mach[7, 8].
منابع مشابه
Design and Implementation of Real-Time Scheduler in Real-Time Mach
A micro kernel-based operating system architecture is becoming common for advanced distributed computing systems. However, a current microkernel lacks the support of realtime facilities such as a real-time scheduling and synchronization. These facilities are very important for future operating systems to support audio and video. Real-Time Mach provides real-time facilities to make real-time app...
متن کاملFault-Tolerant Real-Time Mach: A Timeline-based approach
Even though real-time systems have the stringent constraint of completing tasks before their deadlines, many existing real-time operating systems do not implement fault tolerance capabilities. In this paper we describe the development and implementation of a non-preemptive fault tolerant real-time policy for aperiodic dynamic tasks. We implemented non-preemptive fault-tolerant scheduling and re...
متن کاملEvaluation of Real-Time Synchronization in Real-Time Mach
Real-Time Mach provides real-time thread and real-time synchronization facilities. A real-time thread can be created for a periodic or aperiodic activity with a timing constraint. Threads can be synchronized among them using a real-time version of the monitor based synchronization mechanism with a suitable locking protocol. In Real-Time Mach, we have implemented several locking policies, such a...
متن کاملExperience with Real-Time Mach for Writing Continuous Media Applications and Servers
This paper describes the experience with Real-Time Mach for writing a network server and a storage server which are suitable for handling audio and video, and a video-on-demand system on these servers. Audio and video are commonly referred to as timing-dependent continuous media. Programming interfaces and resource management policies of current operating systems should be changed for handling ...
متن کاملReal-Time Scheduling and Synchronization in Real-Time Mach
A micro kernel-based operating system architecture is becoming common for advanced distributed computing systems. Advantages of using such micro kernel for real-time applications is that the preemptability of the kernel is better, the size of the kernel becomes much smaller, and addition of new service is easier. However, such a micro kernel alone cannot provide a predictable, distributed real-...
متن کاملFault-Tolerant RT-Mach (FT-RT-Mach) and an Application to Real-Time Train Control
Even though real-time systems have the stringent constraint of completing tasks before their deadlines, many existing real-time operating systems do not implement fault tolerance capabilities. In this paper we summarize fault tolerant real-time scheduling policy for dynamic tasks with ready times and deadlines. Our focus in this paper is the implementation, which includes fault-tolerant schedul...
متن کامل